home *** CD-ROM | disk | FTP | other *** search
- ******************************
- MIDICUT v1.0
-
- cut part of midi file
- by Guenter Nagler
- 1997
- (gnagler@ihm.tu-graz.ac.at)
- ******************************
-
- [0] FEATURES
- + reads a binary midi file
- + writes a binary midi file
- + removes part before start time and after end time
- + cut certain channels (1-16)
- + important midi events are copied to start or end of midi song
- (e.g. note off at end) to start and end song correctly
-
- [1] BACKGROUND
- Sometimes midi files are too large or contain parts that sound worse than
- rest. This utility could be used to copy certain parts of a midi song
- into a new file.
- It needs to specify midi time of two cut points (currently seconds).
-
- Use midifade with option -time to find time values or use a midiplayer that
- shows current playing time.
-
- If you only want to cut the pauses at start or end of midi file then
- use simplier program miditrim.
-
- By default midicut simply copies the full midi song.
- When selecting certain channels this program can also be used to
- copy these channels. The result will be a new song playing less channels.
-
- [2] FILES DESCRIPTION
-
- MIDICUT.EXE.........converter program
- MIDICUT.DOC.........this file, showing usage of MIDICUT.EXE
- MIDIIO.HPP..........header file for a c++ midi parser
- MIDIIO.CPP..........source code for a c++ midi parser
- MIDICUT.CPP.........c++ source code for modifying midi files
- MIDICUT.MAK.........make file for project
- MIDICUT.CFG.........compiler options for make
- MIDICUT.PRJ.........compiler project for Borland (tm) c++ compilers
- only MIDICUT.EXE is required to run program
-
- [3] COPYRIGHT
-
- MIDICUT (c) 1997 was created by Guenter Nagler.
-
- MIDICUT is free and may be used as you wish with this one exception:
-
- You may NOT charge any fee or derive any profit for distribution
- of MIDICUT. Thus, you may NOT sell or bundle MIDICUT with any
- product in a retail environment (shareware disk distribution, CD-ROM,
- etc.) without permission of the author.
-
- You may give MIDICUT to your friends, upload it to a BBS, or ftp it to
- another internet site, as long as you don't charge anything for it.
-
- [4] DISCLAIMER
-
- MIDICUT was designed to handle 100% compatible midi files.
- It was tested with 600 different midi files but I can not say if
- each 100% midi compatible midi file can be correctly converted.
- So I give no guarantees of the results, especially with non 100%
- compatible midi files.
- If you find a midi file that you think to be 100% compatible midi
- that is not correctly converted, please send a sample file to
- gnagler@ihm.tu-graz.ac.at .
-
- Use MIDICUT at your own risk. Anything you do with MIDICUT is your
- responsibility, and not the author's. Any damage caused to any person,
- computer, software, hardware, company, or business by running MIDICUT
- is your responsibility, and the author will not be liable.
-
- If you don't understand these terms, or are not sure of something, or
- are afraid something bad might come of using MIDICUT, don't use it!
- You are here forewarned.
-
- [5] INSTALLATION
-
- [MSDOS]
- Simply copy MIDICUT.EXE in a directory that is in your path.
- When you start the program without arguments
-
- [UNIX]
- compile sources with your C++ compiler (e.g. GNU Compiler g++):
-
- g++ -o midicut midicut.cpp midiio.cpp
-
- and run program
-
- $ midicut
-
- C:\> midicut
-
- you should get the usage text (see next section)
-
- [6] USAGE
-
- midicut copies a part of a midi song into a new file
- usage: MidiCut [-q][-ch #[-#]][-from #][-till #] file.mid cutfile.mid
- -version get program version
- -q be quiet
- -channel c[-d] copy only selected channels c..d (1-16) to output
- -from # start cut at second # (default: 0)
- -end # end cut at second # (default: end of song)
- The parts in brackets [...] are optional.
-
- Warning:
- Do not expect that MIDICUT will produce a copy of the original
- file if no changes are applied! MIDI allows to encode its commands
- in different ways without changing the semantic of the notes (It
- is allowed to compress the midi file by ommiting redunant command
- bytes, but it is no duty).
- MIDICUT only compresses note on/off command bytes for higher
- compatibility.
-
- [8] SUGGESTIONS / COMMENTS / BUG REPORTS / QUESTIONS
-
- WWW: http://hgiicm.tu-graz.ac.at/Cpub
- contains all my dos/unix midi programs
- EMAIL: gnagler@ihm.tu-graz.ac.at
-
- [9] EXAMPLES
-
- example: cut the part between second 112 and 146 from midi song test.mid
-
- midicut -from 112 -till 146 test.mid testcut.mid
-
- example: all channels except drums (channel 10) from midi song test.mid
-
- midicut -channel 1-9 -channel 11-16 test.mid nodrum.mid
-
-